package br.com.atenas.sigop.servico;

import java.sql.Connection;
import java.util.Collection;
import br.com.atenas.sigop.servico.Service;
import br.com.atenas.sigop.dao.ConnectionFactory;
import br.com.atenas.sigop.dao.JogoDAO;
import br.com.atenas.sigop.dto.JogoDTO;

public class JogoService extends Service{

	public void gravarJogo(JogoDTO jogo) throws Exception {
		Connection conn = null;
		try{
			conn = ConnectionFactory.getConnection();
			JogoDAO dao = new JogoDAO();
			dao.gravar(jogo,conn);
		}catch(Exception e){
			throw new RuntimeException(e);
		}finally{
			fecharConexao(conn);
		}
	}
		
	public Collection<JogoDTO> pesquisarJogo(JogoDTO jogo) throws Exception{
		Connection conn = null;
		try{
			conn = ConnectionFactory.getConnection();
			JogoDAO dao = new JogoDAO();
			return dao.pesquisar(jogo, conn);
		}catch(Exception e){
			throw new RuntimeException(e);
		}finally{
			fecharConexao(conn);
		}
	}

	public void alterarJogo(JogoDTO jogo) throws Exception {
		Connection conn = null;
		try{
			conn = ConnectionFactory.getConnection();
			JogoDAO dao = new JogoDAO();
			dao.alterar(jogo,conn);
			conn.commit();
		}catch(Exception e){
			throw new RuntimeException(e);
		}finally{
			fecharConexao(conn);
		}
	}

	public void excluirJogo(JogoDTO jogo) throws Exception {
		Connection conn = null;
		try{
			conn = ConnectionFactory.getConnection();
			JogoDAO dao = new JogoDAO();
			dao.excluir(jogo,conn);
			conn.commit();
		}catch(Exception e){
			throw new RuntimeException(e);
		}finally{
			fecharConexao(conn);
		}
	}
}